package org.cloud.admin.auth.service;


import java.util.List;

import org.cloud.module.common.entity.SysMenuEntity;

import com.baomidou.mybatisplus.extension.service.IService;

/**
 * 菜单管理
 * @author wangyuan
 * @since 2019年6月15日 下午11:13:41
 *
 */
public interface SysMenuService extends IService<SysMenuEntity> {

	/**
	 * 根据父菜单，查询子菜单
	 * @param parentId 父菜单ID
	 * @param menuIdList  用户菜单ID
	 */
	List<SysMenuEntity> queryListParentId(Long parentId, List<Long> menuIdList);

	/**
	 * 根据父菜单，查询子菜单
	 * @param parentId 父菜单ID
	 */
	List<SysMenuEntity> queryListParentId(Long parentId);
	
	/**
	 * 获取不包含按钮的菜单列表
	 */
	List<SysMenuEntity> queryNotButtonList();
	
	/**
	 * 获取用户菜单列表
	 */
	List<SysMenuEntity> getUserMenuList(Long userId);

	/**
	 * 删除
	 */
	void delete(Long menuId);
	
	/**
	 * 根据uri获取配置的权限信息
	 * @param uri
	 * @return
	 */
	SysMenuEntity getByUri(String uri);
}
